records_num = range(1, 10000)
times_insert = []
times_select = []
times_drop = []
t = Table(['P1'], ['C1', 'C2', 'C3'])
setup_insert = """
from db import Table
from __main__ import t
def measure(i):
t.add_record({
'P1': i,
},
{
'C1': i,
'C2': i+1,
'C3': i+2
})
"""
setup_select = """
from __main__ import t
from random import randint, choice
fields = t.table_primaries + t.table_commons
def measure():
key = choice(fields)
value = randint(1, 15000)
t.find_record(key, value)
"""
setup_drop = """
from __main__ import t
from random import randint, choice
fields = t.table_primaries + t.table_commons
def measure():
key = choice(fields)
value = randint(1, 10000)
t.drop(key, value)
"""
for i in records_num:
time = timeit(stmt=f'measure({i})',setup=setup_insert, number=1)
times_insert.append(time)
for i in records_num:
time = timeit(stmt="measure()", setup=setup_select, number=1)
times_select.append(time)
for i in records_num:
time = timeit(stmt="measure()", setup=setup_drop, number=1)
times_drop.append(time)